<style> 
table { 
  font-family: helvetica; 
  border-collapse:collapse; 
} 
th { 
  background: #ccc; 
} 
td, th { 
  border:1px solid #aaa;   
  padding: 10px; 
}
</style>

<?php 
	if (isset($_COOKIE["counter"])) {
		$counter = $_COOKIE["counter"] + 1;
		setcookie("counter", $counter, time() + 60);
	} else {
		setcookie("counter", 0, time() + 60);
		$counter = 0;
	}
	function clean_cookie() {
		setcookie("counter", 0, time() - 10);
	}
	// clean_cookie();
?>
<h1> Basic Web </h1>
<?php
	// Scope
	// PHP 大部分变量都在同一个全局 scope 中
	if (true) {
		$a = 1;
	}
	echo $a, "<br/>";
	// 但是该 scope 不延伸到函数内部除非用 global 关键字
	function foo() {
		global $a;
		echo "In function: $a <br/>";
	}
	foo();
	// super globals 在任何 scope 中全部可见的一组特殊意义的关联数组
	// GLOBALS 保存所有全局变量
	echo "${GLOBALS['a']}", "<br/>";
	// $_GET 保存 get 请求的键-值
	// 若对页面包含 GET 请求, 且请求中包含 username 键
	if (isset($_GET["username"])): ?>
		<p> Hello <?php echo "{$_GET["username"]}" ?> ! </p>
<?php else: // form 的 method 可为 get, set 等, action 为请求的网址 ?>
	<form name=input, method="get", action="web.php">
		<p><input type="text", name="username" /></p>
		<!-- 中文编码的乱码问题 -->
		<p><button type="submit", name="submit", value="login">Submit</button></p>
	</form>
<?php endif;
	if (isset($_POST["age"])): ?>
		<p> Your age is <?php echo "{$_POST["age"]}" ?> ! </p>
<?php else: // form 的 method 可为 get, set 等, action 为请求的网址 ?>
	<form name=input, method="post", action="web.php">
		<p><input type="text", name="age" /></p>
		<!-- 中文编码的乱码问题 -->
		<p><button type="submit", name="submit", value="login">Submit</button></p>
	</form>
<?php endif;
	// 利用 cookie 来进行访问统计(见开头)
	echo "You have been here $counter times! <br/>";
	// 显示当前的 COOKIE 值
	foreach ($_COOKIE as $key => $value) {
		echo "$key == $value <br/>";
	}

	// 利用 session 来显示问候信息, 并具有改名功能
	// session 在一次浏览器开启的时间段内都有效
	// 在浏览器重启后失效
	?>
	<form name="sessiontest", method="get", action="web.php">
		<input type="text", name="myname" />
		<button name="sub", type="submit"> is my name </button>
	</form>
<?php
	session_start();
	if (isset($_GET["myname"])) {
		$_SESSION["myname"] = $_GET["myname"];
	}
	if (isset($_SESSION["myname"])) {
		echo "Hello : {$_SESSION["myname"]} <br />";
	}

	// 连接本地的数据库 php_book
	$mysqli = mysqli_connect("localhost", "root", "", "php_book");
	if (!$mysqli) {
		echo "connection fail. <br />";
	}
?>
	<form name="sql", method="post", action="web.php">
		<p>first name <input type="text" name="firstname" /> </p>
		<p>last name<input type="text" name="lastname" /> </p>
		<p>occupation<input type="text" name="occupation" /></p>
		<p><button name="submit", value="sub">Submit</button></p>
	</form>
<?php
	if (isset($_POST["firstname"])) {
		$fn = $_POST["firstname"];
		$ln = $_POST["lastname"];
		$oc = $_POST["occupation"];
		if ($fn && $ln && $oc) {
			$mysqli->query("INSERT INTO charactors ".
				"(firstName, lastName, occupation)".
				"VALUE ('$fn', '$ln', '$oc')");
		}
	} 
	$result = $mysqli->query("SELECT * FROM charactors");
?>
<?php if ($result): ?>
	<table>
		<tr>
			<th> ID </th>		
			<th> First Name </th>		
			<th> Last Name </th>		
			<th> Occupation </th>		
		</tr>
		<?php while($row = $result->fetch_object()): ?>
			<tr>
				<td><?php echo $row->id ?></td>
				<td><?php echo $row->firstName ?></td>
				<td><?php echo $row->lastName ?></td>
				<td><?php echo $row->occupation ?></td>
			</tr>
		<?php endwhile; ?>
	</table>
<?php endif;?>
